JsFunction

interface JsFunction : JsObject

Represents a JavaScript function that can be passed between Java and JavaScript as a method argument or a return value. The function lifetime is bound to the lifetime of the frame this function belongs to. When the owner frame is unloaded, all the JavaScript objects are automatically disposed. An attempt to access a disposed JavaScript object will result in IllegalStateException.

Since

7.7

Functions

Link copied to clipboard
abstract fun <T> call(methodName: String, args: Array<Any>): T
Executes the function with the given methodName and the args in the JavaScript object.
Link copied to clipboard
abstract fun close()
Closes this JavaScript object.
Link copied to clipboard
abstract fun frame(): Frame
Returns the Frame instance of this JavaScript object.
Link copied to clipboard
abstract fun hasProperty(name: String): Boolean
Checks whether this JavaScript object or any of its prototypes has an enumerable property with the given name.
Link copied to clipboard
abstract fun <T> invoke(@Nullable object: JsObject, args: Array<Any>): T
Invokes this function on the given object with the specified args.
Link copied to clipboard
abstract fun <T> invokeAsync(@Nullable object: JsObject, args: Array<Any>): CompletableFuture<T>
Invokes this function on the given object with the specified args.
Link copied to clipboard
abstract fun ownPropertyNames(): List<String>
Returns an immutable list of the names of the properties of this JavaScript object, both enumerable and non-enumerable, excluding the properties from the prototype objects.
Link copied to clipboard
abstract fun <T> property(name: String): Optional<T>
Returns an Optional describing the value of the JavaScript object's property with the given name or an empty Optional if there is no such property or its value is undefined.
Link copied to clipboard
abstract fun propertyNames(): List<String>
Returns an immutable list of the names of the enumerable properties of this JavaScript object, including the properties from the prototype objects.
Link copied to clipboard
abstract fun putProperty(name: String, @Nullable value: Any): Boolean
Creates a new property with the given name or updates the existing one in the current JavaScript object and returns true if the property with the given name was created or updated successfully.
Link copied to clipboard
abstract fun removeProperty(name: String): Boolean
Removes a property with the given name in the JavaScript object and returns true if the property was successfully removed.